<?php
class Dica extends CI_Controller{
    
     public  function  __construct()
    {
        parent::__construct();
        $this->load->model('dica_model');
        $this->load->model('usuario_model');
        $this->load->model('cidade_model');
        $this->load->model('estado_model');
        $this->load->library('auth');
        $this->load->library('session');
        
        $this->auth->check_logged($this->router->class , $this->router->method);
    }

    public function index($idDica, $idUsuario)
    {
        $idUsuario  = intval($idUsuario);
        $idUserLogin = $this->session->userdata('idUsuario');
        $countLegal = $this->dica_model->count_legal($idDica, $this->session->userdata('idUsuario'));
        $countVou   = $this->dica_model->count_vou($idDica, $this->session->userdata('idUsuario'));
        
        if($countLegal >= 1){$countLegal = 'Legal (' . $countLegal . ')';}else{$countLegal = 'Legal';}
        if($countVou >= 1)  {$countVou = 'Eu Vou (' . $countVou . ')';}else{$countVou = 'Eu Vou';}
        
        $allUser = $this->dica_model->get_all_users_for_tip($idDica);
        
        $data['segue']          = $this->usuario_model->verifica_seguidor($idUsuario, $idUserLogin);
        $data['listaVou']       = $allUser;
        $data['usuario']        = $this->usuario_model->get_by_id($idUsuario);
        $data['dica']           = $this->dica_model->get_by_id($idDica);
        $data['dica']['tempo']  = timespan($data['dica'][0]->create_time, now());
        $data['countVou']       = $countVou;
        $data['countLegal']     = $countLegal;
        $data['title']          = 'HintWeek :: Dica de ' . $data['usuario'][0]->username;
        
        if($data['usuario'][0]->Cidade_idCidade)
        {
            $data['cidade']         = $this->cidade_model->get_by_id($data['usuario'][0]->Cidade_idCidade);
            $data['estado']         = $this->estado_model->get_by_id($data['cidade']->Estado_idEstado);
        }

        $this->load->view('dica/dica_view',$data);
    }
    
    public function create()
    {
        $idUsuario = intval($this->session->userdata('idUsuario'));
        //  Load form_help //
        $this->load->library('form_validation');
        $this->form_validation->set_rules('descricao', 'Descrição', 'required|xss_clean');
        $this->form_validation->set_error_delimiters('<div class="error">', '</div>');

	if ($this->form_validation->run() == FALSE)
	{
            $data['title']       = 'HintWeek';
            $data['usuario']     = get_object_vars($this->usuario_model->get_by_id($idUsuario));
            $data['cidade']      = get_object_vars($this->cidade_model->get_by_id($data['usuario']['Cidade_idCidade']));

            $this->load->view('usuario/usuario_perfil_view',$data);
	}
	else
	{
            $this->dica_model->create();
            
            redirect('/usuario/timeline', 'refresh');
        }
    }  
    
    public function Legal ($idDica, $idDonoDica)
    {
        $idUsuario = $this->session->userdata('idUsuario');
        
        $this->dica_model->legal($idUsuario, $idDica, $idDonoDica);
        
        $countLegal = $this->dica_model->count_Legal($idDica, $idUsuario);
        if($countLegal != FALSE){  $countLegal = 'Legal (' . $countLegal . ')'; }else{ $countLegal = 'Legal';  }
        
        echo img(array('src' => 'img/icon-acoes/like.png','alt' => $countLegal, 'width' => "16" , 'height' => "16", 'title' => $countLegal));
    }
    
    public function euVou($idDica, $idDonoDica)
    {
        $idUsuario = $this->session->userdata('idUsuario');
        
        $this->dica_model->eu_vou($idUsuario, $idDica, $idDonoDica);
        
        $countVou = $this->dica_model->count_Vou($idDica, $idUsuario);
        if($countVou != FALSE){  $countVou = 'Eu Vou (' . $countVou . ')'; }else{ $countVou = 'Eu Vou';  }
        
        echo img(array('src' => 'img/icon-acoes/go.png','alt' => $countVou, 'width' => "16" , 'height' => "16", 'title' => $countVou));
    }
    
    public function mural($idDica, $idUsuario)
    {
        $idUsuario = intval($idUsuario);
        $mensagens = $this->dica_model->get_all_mesages_mural($idDica);

        if($mensagens != NULL)
        {
            foreach($mensagens as $key => $row)// Verifica dados de dicas do usuario
            {
                $data['mensagem'][$key]                = $this->dica_model->get_by_id_mesages_mural($row);
                $data['mensagem'][$key]['tempo']       = timespan($data['mensagem'][$key][0]->create_time, now());
            }
        }
        else
        {
            $data['mensagem']['print'] = 'Não há mensagens para este Mural. Você pode ser o primeiro!';
        }
        $countDicas = $this->dica_model->count_all($idUsuario);
        if($countDicas > 1){ $countDicas = $countDicas . ' dicas';}else{$countDicas = $countDicas . ' dica';}

        $data['todas']          = $mensagens;
        $data['countDicas']     = $countDicas;
        $data['listaUsers']     = $this->dica_model->get_all_users_for_tip($idDica);
        $data['usuario']        = $this->usuario_model->get_by_id($idUsuario);
        $data['cidade']         = $this->cidade_model->get_by_id($data['usuario'][0]->Cidade_idCidade);
        $data['estado']         = $this->estado_model->get_by_id($data['cidade']->Estado_idEstado);
        $data['dica']           = $this->dica_model->get_by_id($idDica);
        $data['title']          = 'HintWeek :: Mural da dica';

        $this->load->view('dica/dica_mural_view', $data);
    }

    public function mensagem_mural($idDica, $idDonoDica)
    {
        $idUsuario = intval($this->session->userdata('idUsuario'));
        
        $config = array(
                   array(
                         'field'   => 'mensagem',
                         'label'   => 'Mensagem',
                         'rules'   => 'required'
                      ),
                 );
        
        //  Load form_help //
        $this->load->library('form_validation');
        $this->form_validation->set_rules($config);
        $this->form_validation->set_error_delimiters('<div class="error">', '</div>');

        if ($this->form_validation->run() == FALSE)
	{
            $data['title']      = 'HintWeek :: Mural da Dica';
            $data['usuario']    = get_object_vars($this->usuario_model->get_by_id($idUsuario));
            $data['cidade']     = get_object_vars($this->cidade_model->get_by_id($data['usuario']['Cidade_idCidade']));
            $data['estado']     = get_object_vars($this->estado_model->get_by_id($data['cidade']['Estado_idEstado']));
            $data['dica']       = get_object_vars($this->dica_model->get_by_id($idDica));

            $this->load->view('dica_mural_view', $data);
	}
        else
        {
            $this->dica_model->add_mensagem_mural();

            redirect('/dica/mural/'. $idDica . '/' . $idDonoDica, 'refresh');
        }
    }  
}


/* End of file dica.php */
/* Location: ./application/controller/dica.php */